Coordinating the schedules of multiple people is a difficult problem. For example, in any workplace it is necessary to coordinate employees' schedules so that the workplace is fully staffed at all times, even as the availability of individual employees changes due to illness, vacations, changes in personnel, and other causes. Scheduling problems are particularly difficult in facilities such as hospitals, which have a large number of employees serving in a wide variety of roles, where both demand and availability vary frequently, and where the need to avoid gaps in coverage is particularly significant. Coordinating employee schedules in such an environment in a way that satisfies the staffing needs of the hospital while satisfying the personal needs of the employees can be particularly challenging.
For these and other reasons, computers have long been used in an attempt to facilitate scheduling. At first, computer-based scheduling systems were used in an attempt to perform what was referred to as “optimizing the workforce,” in an effort to match labor supply with demand as closely as possible in the face of frequent shifts in both supply (e.g., a nurse calling in sick) and demand (e.g., an emergency surgery patient entering the hospital). Most automated scheduling software continues to be focused on such optimization.
So-called workforce optimization, however, leaves much to be desired. For example, scheduling is one of the only processes that must be revisited by many people within a large organization, such as a hospital, many times within a week, as both supply and demand fluctuate. Nurses, for example, must use the scheduling system to check their schedules and request time off. Management must use the scheduling system to view schedule change requests and to update schedules within the system. As a result, an automated scheduling system should be capable of responding to frequently-changing inputs from multiple users both quickly. Existing workforce optimization software, however, typically responds to such changes slowly, unless large and expensive computing equipment is employed.
Some studies estimate that the U.S. healthcare system will fall short by 800,000-1 million nurses by the year 2020. Therefore it would be highly desirable to take steps to retain existing nurses. Yet there is a lack of any existing computer-based tools for retaining nurses. The most important factor in retaining nurses is providing them with a work schedule that matches their needs, including having time off for their outside lives. If their schedules do not match their needs, they will leave for another job. Therefore, there is a great need for a scheduling system that could more accurately match the needs of individual nurses with their work schedules. The same is true more generally for all employees and other workers.